var DivScroll = function (layerNode) {
    //取消事件的默认动作兼容性写法
    function preventDefault(e) {
        e = e || window.event;
        e.preventDefault && e.preventDefault();
        e.returnValue = false;
    }
    // 阻止当前事件向祖辈元素的冒泡传递兼容写法
    function stopPropagation(e) {
        e = e || window.event;
        e.stopPropagation && e.stopPropagation();
        e.cancelBubble = false;
    }
    //如果没有这个元素的话，那么将不再执行下去
    if ($(layerNode).length === 0) return;
    this.popupLayer = $(layerNode);
    this.startX = 0;
    this.startY = 0;
    this.popupLayer.mousewheel( function (e) {
        // 阻止冒泡到document [document上已经preventDefault]
        stopPropagation(e);
        var delta = e.wheelDelta || e.detail || 0;
        if (this.offsetHeight + this.scrollTop >= this.scrollHeight) {
            if (delta < 0) {
                preventDefault(e);
                return false;
            }
        }
        if (this.scrollTop === 0) {
            if (delta > 0) {
                preventDefault(e);
                return false;
            }
        }
        // 会阻止原生滚动
        // return false;
    }, false);
    this.popupLayer.on('touchstart', function (e) {
        this.startX = e.changedTouches[0].pageX;
        this.startY = e.changedTouches[0].pageY;
    }, false);
    this.popupLayer.on('touchmove', function (e) {
        e.stopPropagation();
        var deltaX = e.changedTouches[0].pageX - this.startX;
        var deltaY = e.changedTouches[0].pageY - this.startY;
        // 只能纵向滚
        if (Math.abs(deltaY) < Math.abs(deltaX)) {
            e.preventDefault();
            return false;
        }
        if (this.offsetHeight + this.scrollTop >= this.scrollHeight) {
            if (deltaY < 0) {
                e.preventDefault();
                return false;
            }
        }
        if (this.scrollTop === 0) {
            if (deltaY > 0) {
                e.preventDefault();
                return false;
            }
        }
        // 会阻止原生滚动
    }, false);
};
